home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-21 / qwhite.zip / LOADHI6.TEC < prev    next >
Text File  |  1992-03-09  |  11KB  |  184 lines

  1. ID:L6 LOADHI:  Recent Versions
  2. Quarterdeck Technical Note #183
  3. by Joe Wilder
  4. last revision:  12 February 1992
  5.  
  6. This technote discusses Quarterdeck's LOADHI programs, concentrating on 
  7. material which is not already in the Quarterdeck manuals and speaks to 
  8. versions of QEMM-386 5.0 or later, QEMM-50/60 5.0 or later, and any version of 
  9. QRAM.  The appropriate Quarterdeck manual contains the basic information about 
  10. and instructions for loading high.
  11.  
  12. Q: WHAT DOES OPTIMIZE DO?
  13.  
  14. OPTIMIZE will load TSRs and device drivers high in the most "optimal" way, 
  15. often testing all possible combinations, which can number in the millions. The 
  16. LOADHI programs available in QEMM-386 version 5 and later can determine the 
  17. size of particular TSRs or device drivers and will place them in specific 
  18. memory address ranges.  It would be improbable that one could use the LOADHI 
  19. utilities manually and improve on the way OPTIMIZE arranges programs in high 
  20. memory.  There are, however, instances where you may need to use the LOADHI 
  21. programs manually.  Diskless network workstations often need to have their 
  22. CONFIG.SYS constructed when you aren't actually logged onto the specific 
  23. workstation.  Such a procedure wouldn't be compatible with OPTIMIZE.  These 
  24. workstations could still benefit greatly from using the LOADHI programs 
  25. manually.  There is a separate Quarterdeck Technical Bulletin #191, 
  26. "Quarterdeck's OPTIMIZE Program", on the subject of OPTIMIZE. 
  27.  
  28. Q: WHAT IS LOADHI ALL ABOUT?
  29.  
  30. There is a popular misconception that PCs using DOS have an absolute limit of 
  31. 640K of space to run programs in.  Untrue --there is actually 1024K of 
  32. addressable code space.  The LOADHI programs are used to run resident programs 
  33. and device drivers in  the address space between 640K and 1024K.  This area is 
  34. normally reserved for hardware devices such as video cards, system ROM and 
  35. network adapters.  Any space in that range that isn't occupied by devices, 
  36. ROMs, or RAM is just that, empty space.  There is usually more than one 
  37. available space.  Each of these areas is called a region.  QEMM-386 and QEMM-
  38. 50/60 put memory in these empty spaces with a process called memory mapping.  
  39. Memory assigned to these regions is called "High RAM."  QRAM relies on the 
  40. ability of some Expanded memory cards and some types of ShadowRAM to map 
  41. memory into this same portion of the address space to create High RAM.  The 
  42. more devices you have that use the address range 640-1024K, the less high 
  43. memory will be available to load programs into.  Expanded Memory managers also 
  44. utilize 64K of this upper address space for what is called a "Page Frame."  
  45. The Expanded Memory Page Frame is a space through which programs familiar with 
  46. the Expanded Memory standard can get access to the pool of Expanded Memory.
  47.  
  48. Q: CAN I GET RID OF THE EXPANDED MEMORY PAGE FRAME?
  49.  
  50. The Page Frame may turned off, and doing so would allow space for
  51. 64K more High Ram.  The disadvantage to doing this is that the Stealth feature 
  52. of QEMM-386 is disabled (the Stealth feature usually creates more than 64K of 
  53. additional High RAM) and programs that want to use Expanded Memory can no 
  54. longer do so.  Therefore, turning off the Expanded Memory Page Frame is only a 
  55. viable option for users whose programs don't use Expanded Memory. The 
  56. parameter to turn off the Expanded Memory Page Frame is "FRAME=NONE" in QEMM-
  57. 386 and QEMM-50/60, and "FL=0" in QRAM.
  58.  
  59. Q: WILL LOADHI LOAD TSRs DIRECTLY INTO EXTENDED OR EXPANDED MEMORY?
  60.  
  61. No. New QEMM-386, QEMM-50/60, and QRAM users often assume that LOADHI can load 
  62. TSRs and device drivers directly in Extended or Expanded Memory.  This is not 
  63. the case.  The only address space outside of conventional memory where these 
  64. items can be run is in what were empty addresses (previous to the installation 
  65. of QEMM-386 and the RAM parameter) in the range from 640K to 1024K where QEMM-
  66. 386 or QEMM-50/60 can map, or where the EMS manager can map to allow QRAM can 
  67. create High RAM.  This is where High RAM gets installed when the RAM parameter 
  68. is used. 
  69.  
  70. Q: WHY AM I GETTING AN ERROR MESSAGE:  "No High Memory Available"?
  71.  
  72. The RAM parameter to QEMM386.SYS and QEMM.SYS must be invoked in order to use 
  73. LOADHI programs.  This attaches some Expanded Memory to the unused addresses 
  74. in the reserved memory area.  Once the High RAM is available, programs can be 
  75. loaded there with LOADHI.  If loading high is attempted without the RAM 
  76. parameter being specified, the error message above will appear.  Using the RAM 
  77. parameter to QEMM386.SYS prevents QEMM-386 from being turned off.  
  78.  
  79. Q: I SEEM TO HAVE ENOUGH HIGH RAM, BUT MY PROGRAM STILL WILL NOT LOAD HIGH.
  80.  
  81. Each program must be loaded into a single contiguous memory region.  Because of 
  82. this, very large TSRs and device drivers often won't load high.  For instance, 
  83. if there are two high memory regions, one of 80K, and the other of 32K, a 
  84. program that requires 90K to load wouldn't be able to be loaded high.  It 
  85. would have to fit in one region or the other.  The size and number of regions 
  86. varies from computer to computer depending on the size of the BIOS, the number 
  87. of devices and where in the 640-1024K address space these items are situated.  
  88. In versions 6.0 and later of QEMM-386, a technology is available that will 
  89. allow for the temporary use of the Page Frame or a ROMs address space for the 
  90. initialization of a TSR or driver if it will shrink back to a small enough 
  91. size so as not to use the extra space once it is loaded.  This allows you to 
  92. "Squeeze" something into a smaller region than it could normally be loaded 
  93. into.  
  94.  
  95. Q: IS THERE ANY WAY OF FINDING JUST A LITTLE MORE HIGH RAM?
  96.  
  97. There are some small things you can do that may improve your available 
  98. conventional memory.  Rearranging your CONFIG.SYS and AUTOEXEC.BAT so that the 
  99. items that take the most memory come first often will improve available 
  100. conventional memory when OPTIMIZE is run.  Setting up your hardware devices so 
  101. the available High RAM is in fewer larger contiguous regions instead of many 
  102. small fragmented regions will allow OPTIMIZE more possibilities for putting 
  103. things up high.  For example, three 7K regions often aren't as usable as one 
  104. 21K area.  Changing the address ranges hardware devices use is accomplished by 
  105. reconfiguring the hardware itself.  Some devices have jumpers or switches on 
  106. the card, others are software configurable.  Using the Analyze feature of 
  107. QEMM-386 or Manifest may help you to find some more places to put High RAM.  
  108. If this procedure is used, the instructions must be followed explicitly for 
  109. safety's sake.  QEMM-386 version 6.0 and later have the new Stealth 
  110. technology. Stealth allows you to put the ROMs that normally reside in upper 
  111. address space (640-1024K) somewhere else so the address space they normally 
  112. occupy can be used to create more High RAM.   You generally get an 84K or 
  113. greater increase in the amount of High RAM available when this feature is 
  114. implemented.  There is a Quarterdeck Technical Bulletin, #205, 
  115. "Troubleshooting Stealth" on the subject of Stealth.
  116.  
  117. Q: I HAVE A PS/2 MICROCHANNEL MACHINE WITH AN 80286 PROCESSOR.  IS THERE A 
  118. PRODUCT THAT WILL ALLOW ME TO LOAD HIGH? 
  119.  
  120. Yes - Quarterdeck makes a product called QEMM-50/60 which is specifically for 
  121. PS/2 models 50 and 60 microchannel machines.  There are limitations to these 
  122. machines.  They must have add-on memory that conforms to the specification of 
  123. that listed in the QEMM-50/60 manual.  This product was developed specifically 
  124. for these particular PS/2 systems and won't work on other 80286 platforms.   
  125. See Quarterdeck Technical Bulletin #186, "QEMM-50/60 Hardware Requirements", 
  126. for more information on QEMM-50/60 and what boards work with it.
  127.  
  128. Q: WHAT IF I HAVE AN 8080 OR 80286 MACHINE THAT IS NOT A PS/2 MICROCHANNEL 
  129. MACHINE.  IS THERE ANYTHING THAT WILL WORK FOR ME?
  130.  
  131. Yes - If you have an add-on memory board on your machine that conforms to the 
  132. EMS 4.0 HARDWARE specification, Quarterdeck's QRAM product can create High RAM 
  133. for you.  And QRAM comes with the LOADHI and OPTIMIZE programs.  QRAM can also 
  134. create High RAM from the Shadow RAM that comes on some of the Chips & 
  135. Technologies type 80286 systems.
  136.  
  137. Q: ARE THERE LIMITS TO LOADING HIGH ON 8088 AND 80286 MACHINES?
  138.  
  139. Neither QEMM-50/60 nor QRAM can make use of QEMM386's Squeeze technology.   
  140. The value of loading high into the High RAM created by these programs in space 
  141. already available has been indispensable to many though.   
  142.  
  143. Q: WHY WON'T LOADHI LOAD MY BUFFERS HIGH?
  144.  
  145. The limitation is not in the LOADHI program, but with Quarterdeck's 
  146. BUFFERS.COM program.  Quarterdeck would normally recommend setting the 
  147. BUFFERS=xx statement in the CONFIG.SYS to 1 buffer, then using the LOADHI.com 
  148. and BUFFERS.COM program in the AUTOEXEC.BAT file to LOADHI the remainder of 
  149. the BUFFERS desired (for example:  c:\QEMM\LOADHI C:\QEMM\BUFFERS=20.)  In 
  150. QEMM-386 versions previous to 6.0 (and versions of QEMM-50/60 previous to 
  151. version 6 and versions of QRAM previous to version 2), the BUFFERS.COM program 
  152. can only create disk BUFFERS for DOS versions 2.x and 3.x.  The BUFFERS.COM 
  153. program that comes with QEMM-386 version 6.0 and later (and QEMM-50/60 version 
  154. 6 and later and QRAM version 2 and later) can create BUFFERS for DOS version 
  155. 5.0 as well.  There is no version of Quarterdeck's BUFFERS.COM program that 
  156. will work with DOS version 4.x.  This is due to the unusual way disk BUFFERS 
  157. are implemented by DOS 4.x.  The Quarterdeck Technical Bulletin #226, 
  158. "BUFFERS", discusses the way DOS's BUFFERS and Quarterdeck's BUFFERS.COM work.  
  159.  
  160. Q: IS THERE ANYTHING SPECIAL TO CONSIDER ABOUT LOADING HIGH FOR DESQVIEW 
  161. USERS? 
  162.  
  163. DESQview has the capability of running most of its own code in high memory.  
  164. You do not have to use the RAM parameter (although it's O.K. to do so) to get 
  165. this feature.  DV.COM (XDV.COM renamed) will load into the memory mapped into 
  166. the available addresses on its own, whether QEMM-386, QEMM-50/60, or another 
  167. EMS manager has mapped the memory there.  It will then run DESQview in that 
  168. memory. DESQview can use as much as 95K of reserved memory space.  Loading 
  169. high too many resident programs and drivers before going into DESQview may 
  170. cause DESQview to load more of itself in the lower 640K, resulting in little 
  171. or no gain for the largest available window size in DESQview.  Frequently, 
  172. because of the different sizes of memory regions available, you may actually 
  173. get a slightly larger window size in DESQview by loading something low instead 
  174. of high.  If you are running DESQview, it is a good idea to avoid loading "Pop-
  175. up" type TSRs before DESQview (using LOADHI or not) but instead run them in 
  176. DESQview windows, by means of which their overhead in lower memory can be 
  177. completely eliminated.
  178.  
  179.   ************************************************************************
  180.   *This technical note may be copied and distributed freely as long as it*
  181.   *is distributed in its entirety and it is not distributed for profit.  *
  182.   *         Copyright (C) 1990-2 by Quarterdeck Office Systems           *
  183.   ************************ E N D   O F   F I L E *************************
  184.